using System.ComponentModel.DataAnnotations;

namespace B.S.ReportEvent.Domain.Entities;

/// <summary>
/// 工作流审批记录表
/// </summary>
public class ProcessRecords
{
    /// <summary>
    /// 主键
    /// </summary>
    [Key]
    public int RecordId { get; set; }

    /// <summary>
    /// 实例主键
    /// </summary>
    public int InstanceId { get; set; }

    /// <summary>
    /// 表单分类编号
    /// </summary>
    public string FormTypeNo { get; set; } = null!;

    /// <summary>
    /// 表单分类名称
    /// </summary>
    public string FormTypeName { get; set; } = null!;

    /// <summary>
    /// 表单编号
    /// </summary>
    public string FormNo { get; set; }  = null!;

    /// <summary>
    /// 表单名称
    /// </summary>
    public string FormName { get; set; } = null!;

    /// <summary>
    /// 节点编号
    /// </summary>
    public string NodeNo { get; set; } = null!;

    /// <summary>
    /// 节点名称
    /// </summary>
    public string NodeName { get; set; } = null!;

    /// <summary>
    /// 操作者编号
    /// </summary>
    public string OperatorId { get; set; } = null!;

    /// <summary>
    /// 操作者姓名
    /// </summary>
    public string OperatorName { get; set; } = null!;

    /// <summary>
    /// 操作者意见
    /// </summary>
    public string OperatorOpinion { get; set; } = null!;

    /// <summary>
    /// 审批状态
    /// </summary>
    public int ApproveStatus { get; set; } 

    /// <summary>
    /// 审批状态名称
    /// </summary>
    public string ApproveStatusName { get; set; } = null!;

    /// <summary>
    /// 创建时间
    /// </summary>
    public DateTime CreatedTime { get; set; }

    /// <summary>
    /// 删除标记 (0: 正常, 1: 删除)
    /// </summary>
    public int IsDeleted { get; set; }
}